SlideShare a Scribd company logo
Tools for writing
Haskell Programs
TL;DR: Haskell has
 excellent tooling.
The Haskell Platform
Building &
Distributing
ghc AwesomeApp.hs
ghc --make AwesomeApp.hs
ls *.hi *.o
ghc --make blah --hi-
      dir=Urgh
Cabal
Cabal

$ mkdir my_project && cd my_project
$ cabal init # Create your new project!
$ cabal configure
$ cabal build # Outputs are in ./dist
Share It - Hackage!
  $ cabal upload dist/kit-0.1.tar.gz
$ cabal install kit
Dependency manager for Obj-C code
Discovering
Hackage
http://hackage.haskell.org/
Tools for writing Haskell programs
> 2100 packages
@Hackage
#haskell -> hackagebot
Hayoo
• “map”
• “map package:containers”
• “map module:Data.Map”
• “name:map”
Tools for writing Haskell programs
Name search...
HOOGLE
(a -> b) -> [a] -> [b]
Tools for writing Haskell programs
$ cabal install hoogle

$ hoogle “[a] -> Int”
Improving
HLint
• f = do blah -- f = blah
• f = (x) + 3 -- f = x + 3

• Bracket reduction. Do-Notation help.
#haskell -> lambdabot
~= ghci + goodies
@pl/@unpl
@pl (a -> a + x)

      (+x)
@unpl (++x) . show

(d -> (show d) ++ x)
$ cabal install pointfree
$ cabal install pointful
La Fin.

More Related Content

PDF
Docker včera, dnes a zítra
PDF
Hadoop Israel - HBase Browser in Hue
PDF
Journée DevOps : Un outil de monitoring applicatif
PDF
Beeswax Hive editor in Hue
PPTX
Introduction tomongodb
PPTX
AWS Hadoop and PIG and overview
PDF
Business Dashboards using Bonobo ETL, Grafana and Apache Airflow
PDF
Infrastructure as Code with Terraform
Docker včera, dnes a zítra
Hadoop Israel - HBase Browser in Hue
Journée DevOps : Un outil de monitoring applicatif
Beeswax Hive editor in Hue
Introduction tomongodb
AWS Hadoop and PIG and overview
Business Dashboards using Bonobo ETL, Grafana and Apache Airflow
Infrastructure as Code with Terraform

What's hot (19)

PDF
Y! HUG Hue: the Hadoop UI
PDF
H2O World - PySparkling Water - Nidhi Mehta
PDF
Terraforming the Kubernetes Land
PPTX
Apache hadoop hue overview and introduction
PDF
Building a Serverless Computation Environment with Python
PDF
Infrastructure as Code in Google Cloud
PDF
Workshop Infrastructure as Code - Suestra
PDF
Hue: The Hadoop UI - Hadoop Singapore
PDF
Aws dc elastic-mapreduce
PDF
Connecting Pebble to the World
PPT
SharePoint Administration with PowerShell
PPTX
Im flash
PPTX
08 Terraform: Provisioners
PDF
Ansible PyWAW
PPTX
Scala and Hadoop @ eBay
PDF
Managing data workflows with Luigi
ODP
Aws Quick Dirty Hadoop Mapreduce Ec2 S3
PDF
Statsd introduction
PPTX
Developers’ mDay 2019. - Rastko Vasiljević, SuperAdmins – Infrastructure as c...
Y! HUG Hue: the Hadoop UI
H2O World - PySparkling Water - Nidhi Mehta
Terraforming the Kubernetes Land
Apache hadoop hue overview and introduction
Building a Serverless Computation Environment with Python
Infrastructure as Code in Google Cloud
Workshop Infrastructure as Code - Suestra
Hue: The Hadoop UI - Hadoop Singapore
Aws dc elastic-mapreduce
Connecting Pebble to the World
SharePoint Administration with PowerShell
Im flash
08 Terraform: Provisioners
Ansible PyWAW
Scala and Hadoop @ eBay
Managing data workflows with Luigi
Aws Quick Dirty Hadoop Mapreduce Ec2 S3
Statsd introduction
Developers’ mDay 2019. - Rastko Vasiljević, SuperAdmins – Infrastructure as c...
Ad

Similar to Tools for writing Haskell programs (20)

PDF
Docker, Kubernetes, and Google Cloud
PDF
Assignment 1 MapReduce With Hadoop
PDF
CouchDB Mobile - From Couch to 5K in 1 Hour
PDF
Dependencies Managers in C/C++. Using stdcpp 2014
PDF
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
PDF
PDF
Docker for Ruby Developers
PDF
Haskell Tooling Whirlwind
PPTX
Spack - A Package Manager for HPC
PDF
10 things I learned building Nomad packs
PDF
Ops for everyone - John Britton
PDF
John Britton of GitHub on Ops for Everyone at DevCon Summit 2013 #MobileDevNB...
PDF
10 things i learned building nomad-packs
PDF
HaskellとDebianの辛くて甘い関係
KEY
Advanced Technology for Web Application Design
ODP
Puppetpreso
PDF
Knative build for open whisk runtimes phase 1 - 2018-02-20
PPTX
Ruby on Rails and Docker - Why should I care?
PDF
Gophers, whales and.. clouds? Oh my!
PDF
Docker for developers on mac and windows
Docker, Kubernetes, and Google Cloud
Assignment 1 MapReduce With Hadoop
CouchDB Mobile - From Couch to 5K in 1 Hour
Dependencies Managers in C/C++. Using stdcpp 2014
Building Google-in-a-box: using Apache SolrCloud and Bigtop to index your big...
Docker for Ruby Developers
Haskell Tooling Whirlwind
Spack - A Package Manager for HPC
10 things I learned building Nomad packs
Ops for everyone - John Britton
John Britton of GitHub on Ops for Everyone at DevCon Summit 2013 #MobileDevNB...
10 things i learned building nomad-packs
HaskellとDebianの辛くて甘い関係
Advanced Technology for Web Application Design
Puppetpreso
Knative build for open whisk runtimes phase 1 - 2018-02-20
Ruby on Rails and Docker - Why should I care?
Gophers, whales and.. clouds? Oh my!
Docker for developers on mac and windows
Ad

More from nkpart (6)

PPT
Introduction to Laws
KEY
Writing Better Haskell
KEY
Tools for writing Haskell programs
KEY
Deriving Scalaz
KEY
Scala implicits
KEY
Taming Errors with FunctionalKit
Introduction to Laws
Writing Better Haskell
Tools for writing Haskell programs
Deriving Scalaz
Scala implicits
Taming Errors with FunctionalKit

Recently uploaded (20)

PDF
cuic standard and advanced reporting.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Spectral efficient network and resource selection model in 5G networks
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Cloud computing and distributed systems.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
cuic standard and advanced reporting.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
MYSQL Presentation for SQL database connectivity
Spectral efficient network and resource selection model in 5G networks
“AI and Expert System Decision Support & Business Intelligence Systems”
Programs and apps: productivity, graphics, security and other tools
Advanced methodologies resolving dimensionality complications for autism neur...
Cloud computing and distributed systems.
Mobile App Security Testing_ A Comprehensive Guide.pdf
Machine learning based COVID-19 study performance prediction
gpt5_lecture_notes_comprehensive_20250812015547.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Assigned Numbers - 2025 - Bluetooth® Document
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Chapter 3 Spatial Domain Image Processing.pdf
Empathic Computing: Creating Shared Understanding
Unlocking AI with Model Context Protocol (MCP)
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

Tools for writing Haskell programs

Editor's Notes

  • #2: \n
  • #3: It really is. Talk about 3 groups:\nBuilding & Distributing\nDiscovering \nImproving\n
  • #4: Prerequisite for any Haskell dev these days.\n“Batteries include” - Tools (compiler), Base libraries\nOn Windows/Mac - Just works.\nUbuntu Meerkat - works, kind of (lack of profiling libs).\n
  • #5: \n
  • #6: \n
  • #7: Everything AwesomeApp depends on\n
  • #8: \n
  • #9: \n
  • #10: Time to use a proper build tool\n
  • #11: \n
  • #12: Cabal includes:\n* deps\n* build flags\n* outputs\n
  • #13: \n
  • #14: \n
  • #15: \n
  • #16: \n
  • #17: \n
  • #18: \n
  • #19: \n
  • #20: \n
  • #21: \n
  • #22: \n
  • #23: All caps because it’s really great.\n
  • #24: \n
  • #25: \n
  • #26: \n
  • #27: \n
  • #28: \n
  • #29: \n
  • #30: \n
  • #31: \n
  • #32: \n
  • #33: \n
  • #34: \n
  • #35: \n
  • #36: Great tools for building, finding code, and getting better at writing code. \n